<?php

//Verificare daca fisierul este inclus in script php sau daca este executat ascincron cu AJAX 
if (isset($variabila_resurse)) {
 $planeta = $variabila_resurse;
 $user = valoare_mysql("SELECT user FROM planete WHERE id = '".$planeta."'");
}
else {
 header("Cache-Control: no-cache, must-revalidate"); 
 header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); 
 header("Content-type: text/xml");
 require("../config.php");
}
include_once("functii.php");

$populatie = 0;
$ultima_vizita = valoare_mysql("SELECT llogin FROM users WHERE user = '$user'", 0);
$nr_sec = calculare_sec($ultima_vizita, "", "");

$rez_planeta = mysql_fetch_array(mysql_query("SELECT minerale, gaz, energie FROM planete WHERE user = '$user' AND id = '$planeta'"));
$populatie = returnare_populatie($planeta);
#begin setare constante
 $muncitori_minerale = valoare_mysql("SELECT nr FROM unitati WHERE planeta = '".$planeta."' AND tip = '1' AND locatie = 'minerale'", 0);
 $muncitori_gaz = valoare_mysql("SELECT nr FROM unitati WHERE planeta = '".$planeta."' AND tip = '1' AND locatie = 'gaz'", 0);
 $minerale = $rez_planeta["minerale"];
 $gaz = $rez_planeta["gaz"];
 $energie = $rez_planeta["energie"];
 $nivel_cladire_principala = valoare_mysql("SELECT nivel FROM `cladiri` WHERE nume = '1' AND planeta = '$planeta'", 0); //Nivel cladire principala
 $nivel_rafinarie_gaz = valoare_mysql("SELECT nivel FROM `cladiri` WHERE nume = '2' AND planeta = '$planeta'", 0); //Nivel depozit rafinarie gaz
 $nivel_depozit_minerale = valoare_mysql("SELECT nivel FROM `cladiri` WHERE nume = '12' AND planeta = '$planeta'", 0); //Nivel depozit gaz
 $nivel_depozit_aprovizionare = valoare_mysql("SELECT nivel FROM `cladiri` WHERE nume = '3' AND planeta = '$planeta'", 0); //Nivel depozit aprovizionare
 $nivel_uzina_energetica = valoare_mysql("SELECT nivel FROM `cladiri` WHERE nume = '5' AND planeta = '$planeta'", 0); //Nivel uzina energetica
#end setare constante

//comparare si setare
 if (!$nivel_depozit_aprovizionare)
  $nivel_depozit_aprovizionare = 0;
 if (!$nivel_rafinarie_gaz)
  $nivel_rafinarie_gaz = 0;
 if (!$muncitori_minerale)
  $muncitori_minerale = 0;
 if (!$muncitori_gaz)
  $muncitori_gaz = 0;
 
//aflare nr de unitati resurse extrase de o unitate mecanica
if ($nivel_depozit_minerale > 0)
 $productie_m_minerale = round(formula_incrementare(10, $nivel_depozit_minerale, '1', ''));
else
 $productie_m_minerale = 4;
 
if ($nivel_rafinarie_gaz > 0)
 $productie_m_gaz = round(formula_incrementare(10, $nivel_rafinarie_gaz, '1', ''));
else
 $productie_m_gaz = 3;
 
 if ($nivel_uzina_energetica > 0)
 $productie_m_energie = round(formula_incrementare(100, $nivel_uzina_energetica, '1', ''));
else
 $productie_m_energie = 0;

//verificare timp trecut de la ultimul update si incrementare resurse
if ($nr_sec > 1)
{
  if ($muncitori_minerale != 0)
 $minerale += calculare_resurse($muncitori_minerale, $productie_m_minerale)*($nr_sec-1);
  if ($muncitori_gaz != 0)
 $gaz += calculare_resurse($muncitori_gaz, $productie_m_gaz)*($nr_sec-1); 
  if ($nivel_uzina_energetica != 0)
 $energie += calculare_resurse($nivel_uzina_energetica, $productie_m_energie)*($nr_sec-1);
}
 else
{
  if ($muncitori_minerale != 0)
 $minerale += calculare_resurse($muncitori_minerale, $productie_m_minerale);
  if ($muncitori_gaz != 0)
 $gaz += calculare_resurse($muncitori_gaz, $productie_m_gaz);
  if ($nivel_uzina_energetica != 0)
 $energie += calculare_resurse($nivel_uzina_energetica, $productie_m_energie);
}

//variabila utila in cazul in care se doreste marirea vitezei de joc
$nr_sec_update = 1;

//setare timpul necesar extragerii unei unitati
  if ($muncitori_minerale != 0)
$timp_minerale = 1/($muncitori_minerale*$productie_m_minerale/3600*$nr_sec_update);
  else
$timp_minerale = 0;

  if ($muncitori_gaz != 0)
$timp_gaz = 1/($muncitori_gaz*$productie_m_gaz/3600*$nr_sec_update);
  else
$timp_gaz = 0;

if ($nivel_depozit_aprovizionare > 0)
 $max_populatie = round(formula_incrementare(20, $nivel_depozit_aprovizionare, '2.5', ''));
else
 $max_populatie = 0;
//Nivelul maxim de locuitori va incepe de la 20
$max_populatie += 20; 
 
 if ($energie > 20000) 
  $energie = 20000; //constrangere nr maxim de unitati energie
//introducere valori noi in baza de date 
mysql_query("UPDATE users SET llogin = NOW( ) WHERE user = '$user'");
mysql_query("UPDATE planete SET minerale = '$minerale', gaz = '$gaz', energie = '$energie' WHERE user = '$user' AND id = '$planeta'");

if (!isset($variabila_resurse)) {
mysql_close($db);
//afisare arbore XML
echo '<?xml version="1.0" ?>';
echo '
<arbore>
<resurse>
 <tip>minerale</tip>
 <valoare>'.round($minerale).'</valoare>
 <timp>'.$timp_minerale.'</timp>
</resurse>  
<resurse>
 <tip>gaz</tip>
 <valoare>'.round($gaz).'</valoare>
 <timp>'.$timp_gaz.'</timp>
</resurse>
<resurse>
 <tip>populatie</tip>
 <valoare>'.$populatie.'</valoare>
 <timp>0</timp>
</resurse>
<resurse>
 <tip>max_populatie</tip>
 <valoare>'.$max_populatie.'</valoare>
 <timp>0</timp>
</resurse>
</arbore>
';
}

?>